import java.util.HashMap;
import java.util.Map;
import java.util.Set;
import java.util.TreeSet;

/**
 * Created with IntelliJ IDEA.
 * Description:
 * 有许多数据，并且存在重复数据
 * 1\去重
 * 2\找到第一个重复的数据
 * 3\统计每个数据出席那的次数
 * User: xwl
 * Date: 2023-06-01
 * Time: 22:29
 */
public class Test1 {
    public static void main(String[] args) {
        // 统计每个数据出现的次数
        int[] array2 = {1,2,2,3,4,5,6,8,4};
        Map<Integer,Integer> map = new HashMap<>();
        for (int x : array2) {
            if(map.get(x) == null) {
                map.put(x,1);
            }else {
                int val = map.get(x);
                map.put(x,val+1);
            }
        }
        for (Map.Entry<Integer,Integer> entry : map.entrySet()) {
            if(entry.getValue() > 1) {
                System.out.println("key: "+entry.getKey()+" val: "+entry.getValue());
            }
        }

        int[] array = {1,2,2,2,3,3,4,6,8,7};
        // 去重
        Set<Integer> set = new TreeSet<>();
        for (int x: array) {
            set.add(x);
        }
        System.out.println(set);

        // 找第一个重复的数据
        Set<Integer> set2 = new TreeSet<>();
        for (int x:array) {
            if (!set2.contains(x)) {
                set2.add(x);
            }else {
                System.out.println(x);
                return;
            }
        }
    }
}
